package com.yyfax.pay.depository.dao;

import org.apache.ibatis.annotations.Param;

import com.yyfax.pay.depository.domain.FuiouWithdrawModifyCash;

/**
 * 修改提现方式持久化层
 * 
 * @author buyi
 * @date 2017-11-28 15:38:28
 * @since v2.0.0
 */
public interface FuiouWithdrawModifyCashDao {

	/**
	 * 保存订单
	 * 
	 * @author buyi
	 * @date 2017-11-28 15:39:38
	 * @since v2.0.0
	 * @param record
	 * @return
	 */
	public int insert(FuiouWithdrawModifyCash record);

	/**
	 * 根据主键查询订单信息
	 * 
	 * @author buyi
	 * @date 2017-11-28 17:16:11
	 * @since v2.0.0
	 * @param busiId
	 * @return
	 */
	public FuiouWithdrawModifyCash selectByPrimaryKey(String busiId);

	/**
	 * 根据商户订单查询订单信息
	 * 
	 * @author buyi
	 * @date 2017-11-28 19:06:02
	 * @since v1.0.0
	 * @param merchantCode
	 * @param orderId
	 * @return
	 */
	public FuiouWithdrawModifyCash selectByMerchantAndOrderId(@Param("merchantCode") String merchantCode, @Param("orderId") String orderId);

	/**
	 * 根据主键查询订单信息
	 * 
	 * @author buyi
	 * @date 2017-11-28 15:39:48
	 * @since v2.0.0
	 * @param merchantCode
	 * @param orderId
	 * @return
	 */
	// public FuiouWithdrawModifyCash selectByPrimaryKey(@Param("merchantCode") String merchantCode, @Param("orderId") String orderId);

	/**
	 * 更新订单状态
	 * 
	 * @author buyi
	 * @date 2017-11-28 16:06:58
	 * @since v1.0.0
	 * @param busiId
	 * @param origState 原状态，可为空
	 * @param destState
	 * @param rspCode
	 * @param rspMsg
	 * @return
	 */
	public int updateState(@Param("busiId") String busiId, @Param("origState") String origState, @Param("destState") String destState,
			@Param("rspCode") Integer rspCode, @Param("rspMsg") String rspMsg

	);
}